package com.ruoyi.system.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 门禁事件记录对象 ykt_access_event
 * 
 * @author ruoyi
 * @date 2025-11-10
 */
public class YktAccessEvent extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 事件ID，唯一标识这个事件 */
    private String id;

    /** 事件名称 */
    @Excel(name = "事件名称")
    private String eventName;

    /** 事件产生时间(ISO8601格式) */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    @Excel(name = "事件产生时间(ISO8601格式)", width = 30, dateFormat = "yyyy-MM-dd")
    private Date eventTime;



    /** 人员唯一编码 */
    @Excel(name = "人员唯一编码")
    private String personId;

    /** 卡号 */
    @Excel(name = "卡号")
    private String cardNo;

    /** 人员姓名 */
    @Excel(name = "人员姓名")
    private String personName;

    /** 人员所属组织编码 */
    @Excel(name = "人员所属组织编码")
    private String orgIndexCode;

    /** 人员所属组织名称 */
    @Excel(name = "人员所属组织名称")
    private String orgName;

    /** 门禁点名称 */
    @Excel(name = "门禁点名称")
    private String doorName;

    /** 门禁点编码 */
    @Excel(name = "门禁点编码")
    private String doorIndexCode;

    /** 门禁点所在区域编码 */
    @Excel(name = "门禁点所在区域编码")
    private String doorRegionIndexCode;

    /** 抓拍图片地址(相对地址，用于获取图片接口) */
    @Excel(name = "抓拍图片地址(相对地址，用于获取图片接口)")
    private String picUri;

    /** 图片存储服务唯一标识(与pic_uri配对) */
    @Excel(name = "图片存储服务唯一标识(与pic_uri配对)")
    private String svrIndexCode;

    /** 事件类型 */
    @Excel(name = "事件类型")
    private Integer eventType;

    /** 进出类型(1：进；0：出；-1：未知) */
    @Excel(name = "进出类型(1：进；0：出；-1：未知)")
    private Integer inAndOutType;

    /** 读卡器唯一标识 */
    @Excel(name = "读卡器唯一标识")
    private String readerDevIndexCode;

    /** 读卡器名称 */
    @Excel(name = "读卡器名称")
    private String readerDevName;

    /** 控制器设备唯一标识 */
    @Excel(name = "控制器设备唯一标识")
    private String devIndexCode;

    /** 控制器设备名称 */
    @Excel(name = "控制器设备名称")
    private String devName;

    /** 身份证图片地址(用于获取图片接口) */
    @Excel(name = "身份证图片地址(用于获取图片接口)")
    private String identityCardUri;

    /** 事件入库时间(ISO8601格式) */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
//    @Excel(name = "事件入库时间(ISO8601格式)", width = 30, dateFormat = "yyyy-MM-dd")
    private Date receiveTime;

    /** 工号 */
    @Excel(name = "工号")
    private String jobNo;

    /** 学号 */
    @Excel(name = "学号")
    private String studentId;

    /** 证件号码 */
    @Excel(name = "证件号码")
    private String certNo;

    private String eventTimeStr;

    public String getEventTimeStr() {
        return eventTimeStr;
    }

    public void setEventTimeStr(String eventTimeStr) {
        this.eventTimeStr = eventTimeStr;
    }



    public void setId(String id)
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setEventName(String eventName) 
    {
        this.eventName = eventName;
    }

    public String getEventName() 
    {
        return eventName;
    }

    public void setEventTime(Date eventTime) 
    {
        this.eventTime = eventTime;
    }

    public Date getEventTime() 
    {
        return eventTime;
    }

    public void setPersonId(String personId) 
    {
        this.personId = personId;
    }

    public String getPersonId() 
    {
        return personId;
    }

    public void setCardNo(String cardNo) 
    {
        this.cardNo = cardNo;
    }

    public String getCardNo() 
    {
        return cardNo;
    }

    public void setPersonName(String personName) 
    {
        this.personName = personName;
    }

    public String getPersonName() 
    {
        return personName;
    }

    public void setOrgIndexCode(String orgIndexCode) 
    {
        this.orgIndexCode = orgIndexCode;
    }

    public String getOrgIndexCode() 
    {
        return orgIndexCode;
    }

    public void setOrgName(String orgName) 
    {
        this.orgName = orgName;
    }

    public String getOrgName() 
    {
        return orgName;
    }

    public void setDoorName(String doorName) 
    {
        this.doorName = doorName;
    }

    public String getDoorName() 
    {
        return doorName;
    }

    public void setDoorIndexCode(String doorIndexCode) 
    {
        this.doorIndexCode = doorIndexCode;
    }

    public String getDoorIndexCode() 
    {
        return doorIndexCode;
    }

    public void setDoorRegionIndexCode(String doorRegionIndexCode) 
    {
        this.doorRegionIndexCode = doorRegionIndexCode;
    }

    public String getDoorRegionIndexCode() 
    {
        return doorRegionIndexCode;
    }

    public void setPicUri(String picUri) 
    {
        this.picUri = picUri;
    }

    public String getPicUri() 
    {
        return picUri;
    }

    public void setSvrIndexCode(String svrIndexCode) 
    {
        this.svrIndexCode = svrIndexCode;
    }

    public String getSvrIndexCode() 
    {
        return svrIndexCode;
    }

    public void setEventType(Integer eventType) 
    {
        this.eventType = eventType;
    }

    public Integer getEventType() 
    {
        return eventType;
    }

    public void setInAndOutType(Integer inAndOutType) 
    {
        this.inAndOutType = inAndOutType;
    }

    public Integer getInAndOutType() 
    {
        return inAndOutType;
    }

    public void setReaderDevIndexCode(String readerDevIndexCode) 
    {
        this.readerDevIndexCode = readerDevIndexCode;
    }

    public String getReaderDevIndexCode() 
    {
        return readerDevIndexCode;
    }

    public void setReaderDevName(String readerDevName) 
    {
        this.readerDevName = readerDevName;
    }

    public String getReaderDevName() 
    {
        return readerDevName;
    }

    public void setDevIndexCode(String devIndexCode) 
    {
        this.devIndexCode = devIndexCode;
    }

    public String getDevIndexCode() 
    {
        return devIndexCode;
    }

    public void setDevName(String devName) 
    {
        this.devName = devName;
    }

    public String getDevName() 
    {
        return devName;
    }

    public void setIdentityCardUri(String identityCardUri) 
    {
        this.identityCardUri = identityCardUri;
    }

    public String getIdentityCardUri() 
    {
        return identityCardUri;
    }

    public void setReceiveTime(Date receiveTime) 
    {
        this.receiveTime = receiveTime;
    }

    public Date getReceiveTime() 
    {
        return receiveTime;
    }

    public void setJobNo(String jobNo) 
    {
        this.jobNo = jobNo;
    }

    public String getJobNo() 
    {
        return jobNo;
    }

    public void setStudentId(String studentId) 
    {
        this.studentId = studentId;
    }

    public String getStudentId() 
    {
        return studentId;
    }

    public void setCertNo(String certNo) 
    {
        this.certNo = certNo;
    }

    public String getCertNo() 
    {
        return certNo;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("eventName", getEventName())
            .append("eventTime", getEventTime())
            .append("personId", getPersonId())
            .append("cardNo", getCardNo())
            .append("personName", getPersonName())
            .append("orgIndexCode", getOrgIndexCode())
            .append("orgName", getOrgName())
            .append("doorName", getDoorName())
            .append("doorIndexCode", getDoorIndexCode())
            .append("doorRegionIndexCode", getDoorRegionIndexCode())
            .append("picUri", getPicUri())
            .append("svrIndexCode", getSvrIndexCode())
            .append("eventType", getEventType())
            .append("inAndOutType", getInAndOutType())
            .append("readerDevIndexCode", getReaderDevIndexCode())
            .append("readerDevName", getReaderDevName())
            .append("devIndexCode", getDevIndexCode())
            .append("devName", getDevName())
            .append("identityCardUri", getIdentityCardUri())
            .append("receiveTime", getReceiveTime())
            .append("jobNo", getJobNo())
            .append("studentId", getStudentId())
            .append("certNo", getCertNo())
            .toString();
    }
}
